Ollama本地部署
本章节介绍如何在本地通过 Ollama 搭建一个 Python 后端的聊天机器人服务,涵盖 Ollama 安装、模型下载、API 启动、以及 Flask 集成示例。
🛠️ 1. 安装与准备
下载并安装 Ollama(支持 macOS、Windows、Linux):
- 官网链接:Ollama 官方下载
📦 2. 下载模型并启动本地服务
# 下载 llama2 模型
ollama pull llama2
# 启动 Ollama 本地 API 服务
ollama serve
默认监听端口:http://localhost:11434
🧩 3. Python Flask 集成示例
下面以 Flask 为例,实现一个简易聊天接口,接收用户消息并调用 Ollama API 获取回复。
- Python
import requests
from flask import Flask, request, jsonify
app = Flask(__name__)
OLLAMA_API_URL = "http://localhost:11434/api/generate"
MODEL_NAME = "llama2"
@app.route("/chat", methods=["POST"])
def chat():
user_input = request.json.get("message")
if not user_input:
return jsonify({"error": "Missing message"}), 400
payload = {
"model": MODEL_NAME,
"prompt": user_input,
"stream": False
}
try:
response = requests.post(OLLAMA_API_URL, json=payload)
response.raise_for_status()
result = response.json()
answer = result.get("response", "").strip()
return jsonify({"reply": answer})
except Exception as e:
return jsonify({"error": str(e)}), 500
if __name__ == "__main__":
app.run(port=5000)
🔍 4. 运行示例
# 启动 Flask 服务
python chat_api.py
# 测试接口
curl -X POST http://localhost:5000/chat -H "Content-Type: application/json" -d '{"message":"你好,Chatbot!"}'
示例返回:
{
"reply": "你好!我是 Ollama Chatbot。"
}
🗂️ 5. 项目结构示例
my-chatbot/
├── chat_api.py
└── requirements.txt
requirements.txt:
Flask
requests
安装依赖:
pip install -r requirements.txt
🔐 6. Tips
- Tips
- Caution
tip
- Ollama 默认监听
localhost:11434
,可通过配置OLLAMA_API_PORT
环境变量自定义。 - 模型通过
model
字段指定,支持llama2
,mistral
,deepseek
等。
caution
- Flask 仅用于示例,生产环境推荐使用 Gunicorn 或 uWSGI 进行多进程部署。
- 记得处理 API Key 或鉴权(如果对外开放)。